using Abp.Application.Services;
using Abp.Application.Services.Dto;
using SOEI.Solution.DomainEntities.BuyQualification.Dtos;
using System.Collections.Generic;
using System.Threading.Tasks;

namespace SOEI.Solution.DomainEntities.BuyQualification
{
    public interface IBuyQualificationApplyAppService : IApplicationService
    {
        #region -------------------------------------------------辅助工具生成---------------------------------------------- 
        /// <summary>
        /// 获取的分页列表集合
        ///</summary>
        /// <param name="input"></param>
        /// <returns></returns>
        Task<PagedResultDto<BuyQualificationApplyListDto>> GetPaged(GetBuyQualificationApplysInput input);


        /// <summary>
        /// 通过指定id获取ListDto信息
        /// </summary>
        Task<BuyQualificationApplyListDto> GetById(EntityDto<long> input);

        /// <summary>
        /// 返回实体的EditDto
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        Task<GetBuyQualificationApplyForEditOutput> GetForEdit(NullableIdDto<long> input);

        /// <summary>
        /// 添加或者修改的公共方法
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        Task<BuyQualificationApplyEditDto> CreateOrUpdate(CreateOrUpdateBuyQualificationApplyInput input);


        /// <summary>
        /// 删除
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        Task Delete(EntityDto<long> input);


        /// <summary>
        /// 批量删除
        /// </summary>
        Task BatchDelete(List<long> input);

        #endregion

        #region -------------------------------------------------用户自定义------------------------------------------------
        /*请在此扩展应用服务接口*/
        #endregion
    }
}
